home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / alsa / seq_midi_event.h < prev    next >
C/C++ Source or Header  |  2006-01-09  |  2KB  |  66 lines

  1. /**
  2.  * \file include/seq_midi_event.h
  3.  * \brief Application interface library for the ALSA driver
  4.  * \author Jaroslav Kysela <perex@suse.cz>
  5.  * \author Abramo Bagnara <abramo@alsa-project.org>
  6.  * \author Takashi Iwai <tiwai@suse.de>
  7.  * \date 1998-2001
  8.  *
  9.  * Application interface library for the ALSA driver
  10.  */
  11. /*
  12.  *   This library is free software; you can redistribute it and/or modify
  13.  *   it under the terms of the GNU Lesser General Public License as
  14.  *   published by the Free Software Foundation; either version 2.1 of
  15.  *   the License, or (at your option) any later version.
  16.  *
  17.  *   This program is distributed in the hope that it will be useful,
  18.  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
  19.  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  20.  *   GNU Lesser General Public License for more details.
  21.  *
  22.  *   You should have received a copy of the GNU Lesser General Public
  23.  *   License along with this library; if not, write to the Free Software
  24.  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
  25.  *
  26.  */
  27.  
  28. #ifndef __ALSA_SEQ_MIDI_EVENT_H
  29. #define __ALSA_SEQ_MIDI_EVENT_H
  30.  
  31. #ifdef __cplusplus
  32. extern "C" {
  33. #endif
  34.  
  35. /**
  36.  *  \defgroup MIDI_Event Sequencer event <-> MIDI byte stream coder
  37.  *  \ingroup Sequencer
  38.  *  Sequencer event <-> MIDI byte stream coder
  39.  *  \{
  40.  */
  41.  
  42. /** container for sequencer midi event parsers */
  43. typedef struct snd_midi_event snd_midi_event_t;
  44.  
  45. int snd_midi_event_new(size_t bufsize, snd_midi_event_t **rdev);
  46. int snd_midi_event_resize_buffer(snd_midi_event_t *dev, size_t bufsize);
  47. void snd_midi_event_free(snd_midi_event_t *dev);
  48. void snd_midi_event_init(snd_midi_event_t *dev);
  49. void snd_midi_event_reset_encode(snd_midi_event_t *dev);
  50. void snd_midi_event_reset_decode(snd_midi_event_t *dev);
  51. void snd_midi_event_no_status(snd_midi_event_t *dev, int on);
  52. /* encode from byte stream - return number of written bytes if success */
  53. long snd_midi_event_encode(snd_midi_event_t *dev, const unsigned char *buf, long count, snd_seq_event_t *ev);
  54. int snd_midi_event_encode_byte(snd_midi_event_t *dev, int c, snd_seq_event_t *ev);
  55. /* decode from event to bytes - return number of written bytes if success */
  56. long snd_midi_event_decode(snd_midi_event_t *dev, unsigned char *buf, long count, const snd_seq_event_t *ev);
  57.  
  58. /** \} */
  59.  
  60. #ifdef __cplusplus
  61. }
  62. #endif
  63.  
  64. #endif /* __ALSA_SEQ_MIDI_EVENT_H */
  65.  
  66.